$(function () {
  // 需求1: 自定义校验规则;
  //   密码，新密码，确认新密码规则;
  let form = layui.form;
  // verify()值是一个对象，属性是规则名称，值是规则，有两种,数组和函数;
  form.verify({
    // 密码规则，6~16位非空白字符
    pwd: [/^[a-zA-z0-9\S]{6,16}$/, "密码必须6到15位，且不能出现空格"],
    // 新密码规则: 不能和旧密码相同;
    newPwd: function (value) {
      // value新密码的值，获取原密码的值
      let v1 = $("[name=oldPwd]").val();
      // 判断，新密码的值和原密码的值相同，就报错！
      if (v1 === value) {
        return "新旧密码不能相同！";
      }
    },
    // 确认密码规则: 必须和新密码保持一致！
    rePwd: function (value) {
      // value是确认密码的值，获取新密码的值
      let v2 = $("[name=newPwd]").val();
      // 判断，确认密码的值和新密码的值不相同就报错！
      if (v2 !== value) {
        return "两次密码输入不一致！";
      }
    },
  });

  // 需求2: 修改密码
  $("#formPwd").on("submit", function (e) {
    e.preventDefault();
    axios({
      method: "POST",
      url: "/my/updatepwd",
      data: $(this).serialize(),
    }).then((res) => {
      if (res.data.status !== 0) {
        return layui.layer.msg(res.data.message);
      }
      layui.layer.msg("修改密码成功！");
      // 重置表单 reset() 是 DOM对象 调用的;
      $("#formPwd")[0].reset();
      // 重定向到登录页
      setTimeout(function () {
        window.parent.location.href = "/login.html";
      }, 1500);
    });
  });
});
